Use of dependent objects has become increasingly important in object oriented programming, particularly in business software. One aspect of this approach is the use of data objects, which can also be referred to as business objects, to divide functionality into smaller units. These smaller units can be more readily coded, verified, debugged, etc. than a more complicated software application that specifically implements multiple functions. As used herein, a data object is a programming structure, which can include executable code, metadata, data, etc., and which act as entry points to data and other functions within a software architecture. Among other possible features or properties, a data object can include an object type identifier, an object name, a type, an optional application designation (e.g. a designation of an application or applications to which the data object belongs), a program (e.g. coding that implements the functionality of the data object), etc.
Dependent object delegation generally refers to an object being called by another software component such that the calling software component relies on the dependent object to provide a specified set of functionalities. Handing a task over to another data object is referred to as the delegate. Delegation of a task from a service provider, or alternatively from a data or business object or other software component, to one or more dependent objects can allow the use of reusable business logic, which is encoded in the dependent object. Doing so can allow leveraging of multiple uses of functions and tasks that are coded once. A dependent object, in other words, can include functionality or the like that can be used by many business objects (or by other software components), for example through delegation of tasks to the dependent object, without being implemented directly in the software components that use the dependent object functionality.